Evaluating refactorings for spreadsheet models

نویسندگان

  • Jácome Cunha
  • João Paulo Fernandes
  • Pedro Martins
  • Jorge Mendes
  • Rui Pereira
  • João Saraiva
چکیده

Software refactoring is a well-known technique that provides transformations on software artifacts with the aim of improving their overall quality. In the past, we have proposed a catalog of refactorings for spreadsheet models expressed in the ClassSheets modeling language, which allows us to specify the business logic of a spreadsheet in an object-oriented fashion. Reasoning about spreadsheets at the model level enhances a model-driven spreadsheet environment where a ClassSheet model and its conforming instance (the spreadsheet data) automatically co-evolves after a refactoring is applied at the model level. Our motivation for such research was to improve the model and its conforming instance: the spreadsheet data. In this paper we define such refactorings using previously proposed evolution steps for models and instances. We also present an empirical study we designed and conducted in order to confirm our original intuition that these refactorings have a positive impact on end-user productivity, both in terms of effectiveness and efficiency. The results are presented not only in terms of productivity changes between refactored and non-refactored scenarios, but also in terms of overall user satisfaction, relevance, and experience. In almost all cases the refactorings indeed improved end-users productivity. Moreover, in most cases users were more engaged with the refactored version of the spreadsheets they worked with.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Refactoring Meets Spreadsheet Formulas

The number of end-users who write spreadsheet programs is at least an order of magnitude larger than the number of trained programmers who write professional software. We studied a corpus of 3691 spreadsheets and we found that their formulas are riddled with the same smells that plague professional software: hardcoded constants, duplicated expressions, unnecessary complexity, and unsanitized in...

متن کامل

Refactoring Smelly Spreadsheet Models

Identifying bad design patterns in software is a successful and inspiring research trend. While these patterns do not necessarily correspond to software errors, the fact is that they raise potential problematic issues, often referred to as code smells, and that can for example compromise maintainability or evolution. The identification of code smells in spreadsheets, which can be viewed as soft...

متن کامل

Spreadsheet Refactoring

Refactoring is a change made to the internal structure of software to make it easier to understand and cheaper to modify without changing its observable behaviour. A database refactoring is a small change to the database schema which improves its design without changing its semantics. The paper shall present example ‘spreadsheet refactorings’, derived from the above and taking into account the ...

متن کامل

Towards Evaluating the Quality of a Spreadsheet: The Case of the Analytical Spreadsheet Model

We consider the challenge of creating guidelines to evaluate the quality of a spreadsheet model. We suggest four principles. First, state the domain—the spreadsheets to which the guidelines apply. Second, distinguish between the process by which a spreadsheet is constructed from the resulting spreadsheet artifact. Third, guidelines should be written in terms of the artifact, independent of the ...

متن کامل

Composite Refactorings for EMF Models

Models are primary artifacts in model-based, and especially, in model-driven software development processes. Due to their central role, the quality of models must be high to lead to software products of high quality. A common technique for improving the quality of software artifacts is refactoring. Originally developed for code structure improvement, the concept of refactoring has been raised t...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Journal of Systems and Software

دوره 118  شماره 

صفحات  -

تاریخ انتشار 2016